package com.cakebackoffice;

import android.content.Context;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.*;
import com.cakebackoffice.Model.OrderLine;

import java.util.List;

/**
 * Created by IntelliJ IDEA.
 * User: isen
 * Date: 02/03/12
 * Time: 12:42
 * To change this template use File | Settings | File Templates.
 */
public class ListviewOrderListAdapter extends ArrayAdapter<OrderLine> {

    int resource;
    Integer tag = 0;


    public ListviewOrderListAdapter(Context context, int textViewResourceId, List<OrderLine> objects) {
        super(context, textViewResourceId, objects);                 //idem
        this.resource = textViewResourceId;
    }


    // On override ArrayAdapter
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {

        LinearLayout listViewOrderContent;

        // Récuperer l'orderline courant
        OrderLine orderLine = getItem(position);
        // Inflate the product details
        if (convertView == null) {
            listViewOrderContent = new LinearLayout(getContext());
            String inflater = Context.LAYOUT_INFLATER_SERVICE;
            LayoutInflater vi = (LayoutInflater) getContext().getSystemService(inflater);
            vi.inflate(resource, listViewOrderContent, true);
        } else {
            listViewOrderContent = (LinearLayout) convertView;
        }

        // Récupérer les View des productView
        TextView nomProduit = (TextView) listViewOrderContent.findViewById(R.id.nomproduit3);
        TextView quantiteProduit = (TextView) listViewOrderContent.findViewById(R.id.quantiteproduit3);
        TextView totalHT = (TextView) listViewOrderContent.findViewById(R.id.Totalht3);
        ImageView imageProduit = (ImageView) listViewOrderContent.findViewById(R.id.productImage3);
        Button boutonPlus = (Button) listViewOrderContent.findViewById(R.id.more);
        Button boutonMoins = (Button) listViewOrderContent.findViewById(R.id.less);


        // les rempliiiir !!
        //GESTION DES MENUS MANQUANTE

        //les tags des boutons
        tag = orderLine.getTag();  //On tague les boutons avec le tag de l'orderline
        boutonPlus.setTag(tag);
        boutonMoins.setTag(tag);


        //les types

        try {
            if (orderLine.isProduct()) {
                // c'est un produit
                nomProduit.setText(orderLine.getProductType().getName());
            }

            if (orderLine.isMenu()) {
                // c'est un menu
                nomProduit.setText(orderLine.getMenuType().getName());
            }

//            if ((orderLine.getMenuType() != null) && (orderLine.getProductType() != null)) {
//                //c'est un produit inclus dans un menu
//                nomProduit.setText(orderLine.getProductType().toString());
//            }


            quantiteProduit.setText("Quantity : " + new Integer(orderLine.getQuantity()).toString());


            //on crée le drawable
            Resources res = getContext().getResources();
            Drawable shape = res.getDrawable(R.drawable.defaut);  //en dur pour l'instant !!!! mouahaha
            imageProduit.setImageDrawable(shape);

            //on set le prix en fonction de la quantité
            totalHT.setText(new Float(orderLine.getTotalHT()).toString());
        } catch (Exception e) {
            e.printStackTrace();
        }
        return (listViewOrderContent);


    }


}


